

Histogram equalization stretched the intensity distribution from a narrow range to cover more of 0–255. Shadows and highlights separated more clearly, increasing local contrast. In this image, the equalized version appears cleaner and more detailed in dark regions. Overall, I think the quality improved, though some noise was over-enhanced noise in flat areas.
The naive method (Gaussian → derivative) and the DoG method look nearly identical in both x and y directions. The differences are the result of discretization of the derivative, kernel size/truncation, boundary handling, and slight normalization differences between [-1,0,1] and the DoG scaling.
I implemented unsharp masking by Gaussian smoothing (σ = 1.2), subtracting to get the high-frequency component, and adding it back with weights α ∈ {1, 2, 4, 8, 10}. On the CT and moon images, moderate sharpening (α ≈ 2–4) increased perceived sharpness without obvious artifacts, while larger weights (α ≥ 8) produced ringing/halos on strong edges and amplified background noise. This showed the trade-off between acutance and artifacts. For the creative exploration, I used a poster photo in my room. With α ≈ 3, the letters and flower outlines looked crisper. With α ≈ 9–10, I could see bright/dark halos along the black frame and extra grain in the wall texture. Finally, changing σ shifted what was enhanced. Smaller σ emphasized fine texture and noise, while larger σ favored broader edges and reduced noise sensitivity.
Smaller K protects more edges but denoises less. Larger K smooths more broadly and can round edges. As the number of iterations increase, smoothing becomes stronger.
Gaussian smoothing reduces noise but blurs across edges. This results in softening boundaries. In contrast, Perona–Malik (PM) diffusion lowers diffusivity near large gradients. Therefore, it denoises within regions while preserving edges. In some instances, the edges are even more emphasized. This results in a piecewise-smooth appearance. Small differences between the two depend on the boundary handling method and parameter choices such as σ for Gaussian vs. K, iterations, and Δt for PM.
Limitations of anisotropic diffusion (Perona–Malik):
Possible improvement:
I think that a structure-tensor–guided diffusion would improve things. Use a structure tensor to estimate local orientation and guide diffusion.
This reduces edge leakage and preserves elongated features such as text, vessels, or wood grain.
Alternative approaches: